Methods and Apparatus for Visualizing Data

ABSTRACT

A method for visualizing data includes the step of providing a virtual flight visualization of image data representing a non-landscape object.

BACKGROUND OF THE INVENTION

This invention relates generally to a system for visualizing data, and more particularly, to systems and methods that provide for a virtual flight visualization of a non-landscape object.

Typically, the visualization of 3-D medical scan data is performed using surface rendering or volume rendering. Surface rendering is well-suited for applications where segmentation of key structures is desired to provide good visualization, such as with MRI data. Surface rendering is also well-suited where a polygonal mesh can be wrapped around the segmented structures to form a surface model. Volume rendering is well-suited for applications where the assignment of color and opacity values are straight forward in light of the image voxel intensities. This is particularly true for CT data when there is a strong correlation between the Hounsfield units and tissue types.

Further, the rendering of medical scan data tends to be photo-realistic volume rendering which can be augmented using non-photo-realistic rendering. For example, functional information, such as the fMRI of the motor cortex, is colorized and overlaid on gray-scale anatomical data. Further, 3-D graphical cues can be added to guide trajectories during minimally invasive surgeries. Historically, the medical scan data has been presented in such a manner that promotes geometric realism.

Therefore, it would be advantageous to provide systems and methods for visualizing data which are not constrained by the need for geometric realism, but rather can exaggerate contrast using not only color, but also geometry.

BRIEF DESCRIPTION OF THE INVENTION

In one aspect, a method for visualizing data is provided wherein the method includes the step of providing a virtual flight visualization of image data representing a non-landscape object.

In another aspect, a method of visualizing data includes the step of assigning a height to a vertex based upon a non-landscape image pixel value or voxel value.

In yet another aspect, a system is provided. The system includes a detector positioned to receive energy transmitted through or emitted from a non-landscape object, a machine readable medium coupled to the detector, and a set of machine readable instructions embodied in the computer readable medium for providing a virtual flight visualization of the received energy from the non-landscape object.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an exemplary diagnostic imaging system and resulting image.

FIG. 2 illustrates an exemplary initial plot sheet.

FIG. 3 is a flowchart.

FIG. 4 illustrates a virtual flight visualization.

FIG. 5 illustrates a view from a point of reference of a plot sheet.

FIG. 6 illustrates an exemplary plot sheet.

FIG. 7 is a flowchart.

DETAILED DESCRIPTION OF THE INVENTION

There are herein described methods and apparatus useful for imaging systems such as, for example, but not limited to an x-ray system. The apparatus and methods are illustrated with reference to the figures wherein similar numbers indicate the same elements in all figures. Such figures are intended to be illustrative rather than limiting and are included herewith to facilitate explanation of an exemplary embodiment of the apparatus and methods of the invention. Although, described in the setting of an x-ray system, it is contemplated that the benefits of the invention accrue to all diagnostic imaging systems and modalities such as PET, MRI, SPECT, Ultrasound, fused systems such as a CT/PET system, and/or any modality yet to be developed in which data results from the imaging system.

FIG. 1 illustrates an imaging system 10 with an associated display 20. Imaging system 10 can be of any modality, but in one embodiment, system 10 is a CT system. In another embodiment, system 10 is a dual modality imaging system such as a combined CT/PET system and a scan can be done in one modality (e.g., CT) and the processed data can be transferred to the other modality (e.g., PET). Display 20 can be separate from system 10 or integrated with system 10. System 10 includes an acquisition device such as an x-ray radiation detector, a Gamma Camera, an ultrasound probe and/or an MRI coil.

The x-ray imaging system includes a processing circuit. The processing circuit (e.g., a microcontroller, microprocessor, custom ASIC, or the like) is coupled to a memory and a display device. The memory (e.g., including one or more of a floppy disk drive, CD-ROM drive, DVD drive, magnetic optical disk (MOD) device, or any other digital device including a network connecting device such as an Ethernet device for reading instructions and/or data from a computer-readable medium, such as a floppy disk, or an other digital source such as a network or the Internet, as well as yet to be developed digital means, and the like) stores imaging data.

The memory may also store a computer program including instructions executed by the processing circuit to implement the functions described herein. The processing circuit provides an image for display on a device. The detector may be a flat panel solid state image detector, for example, although conventional film images stored in digital form in the memory may also be processed. In one embodiment, the processing circuit executes instructions stored in firmware (not shown).

Once a scan is done using imaging system 10, image data 12 is produced which represents the results of the image. The image represents the human anatomy, or physical objects such as detected in airport or other transportation scanners, or manufactured items such as semi-conductors. This image data does not represent topography of the earth's surface or other physical geographic regions such as those subject to map making, surveying, or graphical information systems. As such, the subject of the image system is a non-landscape object.

Through the creation of the image from a scan, the herein described methods and apparatus can also be part of performing non-destructive tests on objects. For example, testing semi-conductors traditionally has involved testing procedures that destroy the semi-conductor being tested. Therefore, scanning processes, such as x-ray systems, have been used to test semi-conductors in a non-destructive manner. The herein described methods and apparatus can be used with such a testing process to provide a virtual flight simulation for non-destructive testing, including non-destructive testing of semi-conductors.

This non-landscape object is represented by image 12 which is the result of the scan performed by the image scanner 10. A plot sheet 14 of FIG. 2 is then created which has a vertex corresponding to a pixel of the image data. The image data is tessellated into a triangular mesh, in one embodiment, so that the plot sheet contains a plurality of triangular portions. The scan is performed to create the image data in step 22 of FIG. 3 and the initial plot sheet is created in step 24. Each vertex of the plot sheet is mapped to a pixel of the image data in step 26. A height is assigned to the vertex corresponding to the pixel based upon the intensity of the corresponding pixel in step 28. A color is assigned to the vertex based upon the corresponding pixel of the image data in step 30. The color can be assigned based upon a function of brightness or by anatomical information, or by functional information. It should also be noted that the height for each vertex can be either a linear or non-linear transfer function from the corresponding pixel. Therefore, the plot sheet can be displayed and has the advantage of showing contrast between data points which are accentuated by both color and elevation. This provides for a novel perspective of displaying image data for non-landscape objects which provides advantages over simply displaying in color alone. The plot sheet can then be displayed in step 32. Additionally, the image could be reformatted, such as super-sampled to create more pixels or sub-sampled to create fewer pixels, prior to mapping the image to the mesh. Also, the mesh need not be a triangular mesh, as squares would be another popular option. Any known flight controls, such as a joystick, may be used to achieve the visualization.

Once the plot sheet is displayed, the point of view and spatial frame of reference can be altered to provide a virtual flight visualization 18 of image data 12 as shown in FIG. 4. In the virtual flight visualization, the user can view the plot sheet from any number of points of reference. For example, the user can manipulate the virtual flight visualization so as to make it appear that the user is viewing the plot sheet from points of reference 34 a-34 f, by way of example. Further, the user can “fly” along a path 35 to reach the points of reference thereby experiencing virtual flight visualization. Further, the user can rotate the point of reference view 360° in any direction with exemplary directions shown as 36 a and 36 b.

When the user is viewing the plot sheet from point of reference 34 f, the view is shown in FIG. 5. This view is in generally an upward direction and shown for illustration purposes with a circular field of view. When the user is viewing the plot sheet from point 34 a, the view is shown in FIG. 6. This view is generally a downward direction and shown for illustrative purposes with a circular field of view. By moving the point of reference, the user can fly around the plot sheet to view the plot sheet from a multitude of points about the plot sheet in three dimensions.

The point of reference can be controlled through machine readable instructions to allow the user to explore the plot sheet area. Therefore, the user can manipulate the point of reference for different positions and orientations. Effectively, the user can pilot or fly the point of reference to achieve a desired view of the plot sheet area. Further, by manipulating the point of reference to within the plot sheet allowing the user to view certain areas while other areas are outside the field of view according to the point of reference.

Further, virtual flight visualization can allow the user to fly through the surfaces of the plot sheet, bounce off the surfaces, or fly under or through the surfaces to view the image from inside or outside the area of the plot sheet.

The image can also have time points which represent slices of a non-landscape object image. Slices are sequences of sections through the non-landscape object. The slices can each correspond to a plot sheet. Therefore, the plot sheets corresponding to the slices can be displayed in sequence so that the plot sheet may change over time. The user can then see the vertex grow, shrink, or change color according to the plot sheet being displayed. As shown in FIG. 6, slices are created in step 46 and if there are further slices to process in step 48, then the plot sheet is created for the unprocessed slices in step 50. The plot sheet is modified based upon steps 26 through 30 of FIG. 3 in step 52 and the process moves to the next layer in step 54. In another embodiment, the plot sheet can be modified without having to store a plot sheet for each slice according to the particular slices. Therefore, the plot sheet vertex can grow, shrink, or change color according to the current slice. This allows the user to view changes in the plot sheet according to the current slice.

Therefore, not only can the user have a virtual flight visualization for a non-landscape object for a particular time point, but can have multiple time points to “fly” through. The plot sheet can be re-rendered according to each time point or slice to illustrate the changes according to the time points of the non-landscape object. As such, the heights and color of the plot sheet can be modified so that the plot sheet re-rendering represents the changes in the non-landscape object over time.

In one embodiment, the user has the ability to easily switch back between regular mode and virtual flight mode. In another embodiment, where there may be a need to interpolate, when one has a priori knowledge of the anatomy, one can use the a priori knowledge to eliminate or reduce false structures. Additionally, one can use Computer Aided Detection (CAD) programs with the virtual flight. Also, one can, use a computer aided diagnostic (also CAD) program to identify nodules, and then ignore all other structures to help eliminate or reduce false positives. Any known CAD computer assisted diagnostic may be used to identify structure before doing the virtual flight, and aberrations may be ignored.

Also one can use other artifact reduction techniques, for example, most human anatomy is generally not streaky so one can ignore streaks when found in certain areas of the human body.

In general, artifact reduction can be built in with the flight simulation based on one knowing the anatomy or other structure to be scanned. In other words, one may perform a CAD operation on the data and suppress all features not detected by the CAD. One could also identify regions just using a priori information on different regions or by assigning different base heights to different regions. For example in a chest scan, the heart heights may vary from 1000 to 10000, while the lung heights vary from 0 to 9000, or one could have different dynamic ranges for different structures, while the heart region can have 9000 different values, maybe the lung region has 6000 or 20000, the dynamic range can be optimized to aid processing speed versus storage requirements.

Of course, the methods described herein are not limited to practice in system 10 and can be utilized in connection with many other types and variations of imaging systems. In one embodiment, the processing circuit is a computer that is programmed to perform functions described herein, and, as used herein, the term computer is not limited to just those integrated circuits referred to in the art as computers, but broadly refers to computers, processors, microcontrollers, microcomputers, programmable logic controllers, application specific integrated circuits, and other programmable circuits. Although the herein described methods are described in a human patient setting, it is contemplated that the benefits of the invention accrue to non-human imaging systems such as those systems typically employed in small animal research. Although the herein described methods are described in a medical setting, it is contemplated that the benefits of the invention accrue to non-medical imaging systems such as those systems typically employed in an industrial setting, a transportation setting, such as, for example, but not limited to, a baggage scanning CT system for an airport or other transportation center, or scanning manufactured items such as semi-conductor devices.

As used herein, an element or step recited in the singular and proceeded with the word “a” or “an” should be understood as not excluding plural said elements or steps, unless such exclusion is explicitly recited. Furthermore, references to “one embodiment” of the present invention are not intended to be interpreted as excluding the existence of additional embodiments that also incorporate the recited features.

Also, as used herein, the phrase “reconstructing an image” is not intended to exclude embodiments of the present invention in which data representing an image is generated but a viewable image is not. Therefore, as used herein the term, “image,” broadly refers to both viewable images and data representing a viewable image. However, many embodiments generate (or are configured to generate) at least one viewable image.

Exemplary embodiments are described above in detail. The assemblies and methods are not limited to the specific embodiments described herein, but rather, components of each assembly and/or method may be utilized independently and separately from other components described herein.

While the invention has been described in terms of various specific embodiments, those skilled in the art will recognize that the invention can be practiced with modification within the spirit and scope of the claims. 

1. A method of visualizing data comprising the step of providing a virtual flight visualization of image data representing a non-landscape object.
 2. The method of claim 1 wherein the non-landscape object is a medical image.
 3. The method of claim 1 wherein the virtual flight visualization includes a surface having heights based on spatial location and image intensity from image data of the non-landscape object.
 4. The method of claim 1 wherein the non-landscape object is a semi-conductor device.
 5. The method of claim 1 wherein the virtual flight simulation is part of a non-destructive test.
 6. The method of claim 1 wherein the virtual flight visualization includes color representing intensity from image data of the non-landscape object.
 7. A set of machine readable instructions for performing the step of claim
 1. 8. A method of visualizing data comprising the step of assigning a height to a vertex based upon a non-landscape image pixel value or voxel value.
 9. The method of claim 8 wherein the non-landscape object is a medical image.
 10. The method of claim 8 wherein the non-landscape object is a semi-conductor device.
 11. The method of claim 8 wherein the virtual flight simulation is part of a non-destructive test.
 12. The method of claim 8 wherein the virtual flight visualization includes color representing intensity from image data of said non-landscape object.
 13. A set of machine readable instructions for performing the step of claim
 8. 14. A system comprising: a detector positioned to receive energy transmitted through or emitted from a non-landscape object; a machine readable medium coupled to said detector; and, a set of machine readable instructions embodied in said computer readable medium for providing a virtual flight visualization of said received energy from said non-landscape object.
 15. The system of claim 14 wherein said non-landscape object is a medical image.
 16. The system of claim 14 wherein said non-landscape object is a semi-conductor device.
 17. The system of claim 14 wherein said set of machine readable instructions include instructions for providing said virtual flight visualization having a surface having voxel or pixel heights based on spatial location and image intensity of image data of said non-landscape object.
 18. The system of claim 15 wherein said set of machine readable instructions include instructions for providing said virtual flight visualization having a surface having voxel or pixel heights based on spatial location and image intensity of image data of said non-landscape object.
 19. The system of claim 16 wherein said set of machine readable instructions include instructions for providing said virtual flight visualization having a surface having voxel or pixel heights based on spatial location and image intensity of image data of said non-landscape object.
 20. The system of claim 14 wherein said set of machine readable instructions include instructions for providing said virtual flight visualization having color representing intensity of image data regarding said non-landscape object. 